//
//  AppTools.h
//  UI14_json解析
//
//  Created by dllo on 15/12/9.
//  Copyright © 2015年 dllo. All rights reserved.
//

#import <UIKit/UIKit.h>
#import <Foundation/Foundation.h>

typedef void(^AppToolsErrorBlock)(NSError *error);


typedef void(^AppToolsBlock)(id result);

@interface AppTools : NSObject

// 封装AFN方法
+ (void)getDataWithAFNURL:(NSString *)urlStr block:(AppToolsBlock)block errorBlock:(AppToolsErrorBlock)errorBlock;
//
+ (void)getDataFromJsonWithFileName:(NSString *)fileName Block:(AppToolsBlock)block error:(AppToolsErrorBlock)errorBlock;

/**
 *  将图片存至本地
 *
 *  @param img    要保存的图片
 *  @param urlStr 图片的url，这个方法会自动截取最后的斜杠“/”后的图片名
 *  @param folder 保存在document下的哪个文件夹
 */
+ (void)savePictureOnLocal:(UIImage *)img netURL:(NSString *)urlStr onFolder:(NSString *)folder;

/**
 *  检查图片链接是否在本地有缓存
 *
 *  @param imageUrl 图片链接
 *  @param folders  图片保存到本地的路径，从document开始途经的所有文件夹
 *
 *  @return 如果存在返回YES，否则返回NO
 */
+ (BOOL)checkImageIsExistOnLocal:(NSString *)imageUrl onFolders:(NSArray <NSString *> *)folders;

/**
 *  将图片链接换成本地图片链接
 *
 *  @param imageUrl 图片链接
 *  @param folders  从document到保存图片的地方所途经的所有文件夹
 *
 *  @return 本地图片保存或者将要保存的路径路径
 */
+ (NSString *)createImageLocalPathUseUrl:(NSString *)imageUrl withFolders:(NSArray <NSString *> *)folders;

/**
 *  将图片保存到本地
 *
 *  @param image 要保存的图片
 *  @param path  保存到的本地路径（一般用上面转换图片链接的方法返回的路径）
 *
 *  @return 保存成功返回YES，否则返回NO
 */
+ (BOOL)saveImageOnLocal:(UIImage *)image localPath:(NSString *)path;


/**
 *  创建一个文件路径
 *
 *  @param folders  从document开始经过哪些文件夹
 *  @param fileName 文件的名字
 *
 *  @return 返回创建好的文件名字
 */
+ (NSString *)createFilePathFromDocumentWithFolders:(NSArray<NSString *> *)folders fileName:(NSString *)fileName;


@end
